<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns:u="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:s="http://com.ss.logistica/jsf"
	xmlns:p="http://primefaces.org/ui" xmlns="http://www.w3.org/1999/xhtml">

<body>
	<u:composition template="/pages/layout/pageLayout.xhtml">
		<u:define name="body">
			<h:form id="filtroForm">
				<p:panel id="panelFiltro"
					rendered="#{!propietarioController.addEdit}">
					<h:panelGrid columns="7">
						<h:outputText value="Nombre: " />
						<p:inputText
							value="#{propietarioController.propietarioQuery.nombre}">
						</p:inputText>
						
						<h:outputText value="DNI: " />
						<p:inputText
							value="#{propietarioController.propietarioQuery.dni}">
						</p:inputText>
						
						<h:outputText value="CUIT: " />
						<p:inputText
							value="#{propietarioController.propietarioQuery.cuit}">
						</p:inputText>
						<p:commandButton value="Consultar"
							actionListener="#{propietarioController.query}" update="form">
						</p:commandButton>
					</h:panelGrid>
				</p:panel>
			</h:form>

			<h:form id="form" enctype="multipart/form-data">
				<p:growl id="messages" life="5000" />
				<p:dataTable id="dataTable" var="propietario"
					value="#{propietarioController.lazyDM}" paginator="true" rows="10"
					paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
					rowsPerPageTemplate="10,15,20"
					rendered="#{!propietarioController.addEdit}"
					emptyMessage="No se encontraron registros" dynamic="true">

					<f:facet name="header">
						<h:outputText value="#{msgs.admPropietario_title}" />
					</f:facet>

					<p:column>
						<f:facet name="header">
							<h:outputText value="Nombre" />
						</f:facet>
						<h:outputText value="#{propietario.nombre}" />
					</p:column>

					<p:column>
						<f:facet name="header">
							<h:outputText value="DNI" />
						</f:facet>
						<h:outputText value="#{propietario.dni}" />
					</p:column>

					<p:column>
						<f:facet name="header">
							<h:outputText value="Teléfono" />
						</f:facet>
						<h:outputText value="#{propietario.telefono}" />
					</p:column>

					<p:column>
						<f:facet name="header">
							<h:outputText value="Observación Teléfono" />
						</f:facet>
						<h:outputText value="#{propietario.observacionTelefono}" />
					</p:column>

					<p:column>
						<f:facet name="header">
							<h:outputText value="Fecha Nacimiento" />
						</f:facet>
						<h:outputText value="#{propietario.fechaNacimiento}">
							<f:convertDateTime pattern="#{msgs.common_inputDateFormat}"
								timeZone="#{msgs.common_timeZone}" />
						</h:outputText>
					</p:column>

					<p:column>
						<f:facet name="header">
							<h:outputText value="Observaciones" />
						</f:facet>
						<h:outputText value="#{propietario.observaciones}" />
					</p:column>

					<p:column>
						<f:facet name="header">
							<h:outputText value="Opciones" />
						</f:facet>
						<h:panelGrid columns="3">
							<p:commandLink actionListener="#{propietarioController.edit}"
								update="form,filtroForm" oncomplete="tabView.select(0)">
								<h:graphicImage url="/resource/images/edit.gif"
									title="Modificar" style="border:0px" />
							</p:commandLink>
							<h:commandLink actionListener="#{propietarioController.delete}"
								onclick="return confirm('¿Está seguro de eliminar el registro?');">
								<h:graphicImage url="/resource/images/delete.gif"
									title="Eliminar" style="border:0px" />
							</h:commandLink>
						</h:panelGrid>
					</p:column>

					<f:facet name="footer">
						<p:commandButton value="Agregar"
							actionListener="#{propietarioController.add}"
							update="form,filtroForm" oncomplete="tabView.select(0)" />
					</f:facet>
				</p:dataTable>


				<h:panelGrid id="panel" columns="1"
					rendered="#{propietarioController.addEdit}">

					<p:tabView widgetVar="tabView">
						<p:tab title="Datos Principales">
							<p:focus for="nombreIT" />
							<h:panelGrid columns="6">
								<h:outputText value="Nombre" />
								<p:inputText id="nombreIT" maxlength="200"
									value="#{propietarioController.propietarioView.nombre}">
									<f:validateBean for="nombreIT" />
								</p:inputText>
								<h:message id="mnIT" for="nombreIT" />

								<h:outputText value="Fecha Nacimiento" />
								<!-- <p:calendar id="fechaNacimientoC"
									value="#{propietarioController.propietarioView.fechaNacimiento}"
									mode="popup" showOn="button" locale="es"
									pattern="#{msgs.common_inputDateFormat}"
									readOnlyInputText="true">
								</p:calendar> -->

								<p:calendar id="fechaNacimientoC"
									value="#{propietarioController.propietarioView.fechaNacimiento}"
									mode="popup" showOn="button" locale="es"
									pattern="#{msgs.common_inputDateFormat}"
									readOnlyInputText="false" navigator="true"
									yearRange="c-100:c+50"
									converterMessage="El formato de la fecha es incorrecto">
								</p:calendar>
								<h:outputText value="" />

								<h:outputText value="DNI" />
								<p:inputText id="dniIT" maxlength="30"
									value="#{propietarioController.propietarioView.dni}">
									<f:validateBean for="dniIT" />
								</p:inputText>
								<h:message id="mdniIT" for="dniIT" />

								<h:outputText value="CUIL" />
								<p:inputText id="cuilIT" maxlength="30"
									value="#{propietarioController.propietarioView.cuil}">
									<f:validateBean for="cuilIT" />
								</p:inputText>
								<h:message id="mcuilIT" for="cuilIT" />

								<h:outputText value="CUIT" />
								<p:inputText id="cuitIT" maxlength="30"
									value="#{propietarioController.propietarioView.cuit}">
									<f:validateBean for="cuitIT" />
								</p:inputText>
								<h:message id="mcuitIT" for="cuitIT" />

								<h:outputText value="Teléfono" />
								<p:inputText id="telefonoIT" maxlength="30"
									value="#{propietarioController.propietarioView.telefono}">
									<f:validateBean for="telefonoIT" />
								</p:inputText>
								<h:message id="mtelefonoIT" for="telefonoIT" />

								<h:outputText value="Observación Teléfono" />
								<p:inputText id="oservacionTelefonoIT" maxlength="50"
									value="#{propietarioController.propietarioView.observacionTelefono}">
									<f:validateBean for="oservacionTelefonoIT" />
								</p:inputText>
								<h:message id="mObservaciontelefonoIT"
									for="oservacionTelefonoIT" />

								<h:outputText value="Teléfono 2" />
								<p:inputText id="telefono2IT" maxlength="30"
									value="#{propietarioController.propietarioView.telefono2}">
									<f:validateBean for="telefono2IT" />
								</p:inputText>
								<h:message id="mtelefono2IT" for="telefono2IT" />

								<h:outputText value="Observación Teléfono 2" />
								<p:inputText id="oservacionTelefono2IT" maxlength="50"
									value="#{propietarioController.propietarioView.observacionTelefono2}">
									<f:validateBean for="oservacionTelefono2IT" />
								</p:inputText>
								<h:message id="mObservaciontelefono2IT"
									for="oservacionTelefono2IT" />

								<h:outputText value="Teléfono 3" />
								<p:inputText id="telefono3IT" maxlength="30"
									value="#{propietarioController.propietarioView.telefono3}">
									<f:validateBean for="telefono3IT" />
								</p:inputText>
								<h:message id="mtelefono3IT" for="telefono3IT" />

								<h:outputText value="Observación Teléfono 3" />
								<p:inputText id="oservacionTelefono3IT" maxlength="50"
									value="#{propietarioController.propietarioView.observacionTelefono3}">
									<f:validateBean for="oservacionTelefono3IT" />
								</p:inputText>
								<h:message id="mObservaciontelefono3IT"
									for="oservacionTelefono3IT" />

								<h:outputText value="Partida Nacimiento" />
								<p:selectBooleanCheckbox
									value="#{propietarioController.propietarioView.partidaNacimiento}" />
								<h:outputText value="" />

								<h:outputText value="Observaciones" />
								<p:inputTextarea id="observacionesITA" maxlength="150"
									value="#{propietarioController.propietarioView.observaciones}">
									<f:validateBean for="observacionesITA" />
								</p:inputTextarea>
								<h:outputText value="" />

								<h:outputText value="Tipo inscripción" />
								<p:selectOneMenu
									value="#{propietarioController.propietarioView.tipoInscripcion}"
									converter="com.converter.TipoInscripcionConverter">
									<f:selectItems
										value="#{propietarioController.tipoInscripcionEnumList}" />
								</p:selectOneMenu>
								<h:outputText value="" />

							</h:panelGrid>
						</p:tab>
						<p:tab title="Dirección">
							<s:direccion
								direccionBean="#{propietarioController.direccionBean}" />
						</p:tab>

						<p:tab title="Foto">

							<h:panelGrid columns="1">

								<p:fileUpload
									fileUploadListener="#{propietarioController.handleFileUpload}"
									mode="advanced" update="panelImagen" sizeLimit="100000"
									allowTypes="/(\.|\/)(jpg|JPG)$/" auto="true" label="Elegir"
									invalidFileMessage="Tipo de archivo invalido. El archivo debe ser JPG."
									invalidSizeMessage="El tamaño del archivo es incorrecto. El tamaño máximo es 100000 bytes. " />

								<h:graphicImage
									value="/images/#{propietarioController.propietarioView.nombreArchivo}"
									width="170" height="200" />

							</h:panelGrid>
						</p:tab>

						<p:tab title="Autonomos">
							<p:panel header="Agregar autonomo">
								<h:panelGrid columns="4">
									<h:outputText value="Número autonomo" />
									<p:inputMask id="numeroAutonomoIM"
										value="#{propietarioController.autonomo.numeroAutonomo}"
										mask="9999/99">
										<f:ajax execute="@this" />
									</p:inputMask>

									<h:message for="numeroAutonomoIM" />
									<h:outputText value="" />

									<h:outputText value="Fecha" />
									<!-- <p:calendar id="fechaAutonomoC"
										value="#{propietarioController.autonomo.fechaAutonomo}"
										mode="popup" showOn="button" locale="es"
										pattern="#{msgs.common_inputDateFormat}" immediate="true"
										readOnlyInputText="true">
										<p:ajax event="dateSelect"
											listener="#{propietarioController.handleDateSelect}" />
									</p:calendar> -->
									<p:calendar id="fechaAutonomoC"
										value="#{propietarioController.autonomo.fechaAutonomo}"
										mode="popup" showOn="button" locale="es"
										pattern="#{msgs.common_inputDateFormat}" immediate="true"
										readOnlyInputText="true" navigator="true"
										yearRange="c-100:c+50"
										converterMessage="El formato de la fecha es incorrecto">
										<p:ajax event="dateSelect"
											listener="#{propietarioController.handleDateSelect}" />
									</p:calendar>
									<h:outputText value="" />
									<h:outputText value="" />

									<p:commandButton value="Agregar Autonomo"
										actionListener="#{propietarioController.addAutonomo}"
										update="detalleListDT" immediate="true" />
								</h:panelGrid>
							</p:panel>

							<p:dataTable id="detalleListDT" var="detalle"
								value="#{propietarioController.autonomoDM}" emptyMessage="">

								<f:facet name="header">
									<h:outputText value="Detalles" />
								</f:facet>

								<p:column align="center">
									<f:facet name="header">
										<h:outputText value="Número autonomo" />
									</f:facet>
									<h:outputText value="#{detalle.numeroAutonomo}" />
								</p:column>

								<p:column>
									<f:facet name="header">
										<h:outputText value="Fecha" />
									</f:facet>
									<h:outputText value="#{detalle.fechaAutonomo}">
										<f:convertDateTime pattern="#{msgs.common_inputDateFormat}"
											timeZone="#{msgs.common_timeZone}" />
									</h:outputText>
								</p:column>

								<p:column>
									<f:facet name="header">
										<h:outputText value="Opciones" />
									</f:facet>
									<h:panelGrid columns="3">
										<h:commandLink
											actionListener="#{propietarioController.deleteAutonomo}"
											immediate="true">
											<h:graphicImage url="/resource/images/delete.gif"
												title="Eliminar" style="border:0px" />
										</h:commandLink>
									</h:panelGrid>
								</p:column>
							</p:dataTable>

						</p:tab>


						<p:tab title="Móviles">
							<p:panel header="Agregar Móvil">
								<h:panelGrid columns="4">
									<h:outputText value="Móvil" />
									<p:autoComplete id="movilAC"
										disabled="#{propietarioController.movilSelected}"
										value="#{propietarioController.movilPropietarioDetalle.movil}"
										completeMethod="#{propietarioController.completeMovil}"
										var="movil"
										itemLabel="#{movil.numeroMovil} - #{movil.patente}"
										itemValue="#{movil}" converter="com.converter.MovilConverter"
										maxResults="10" queryDelay="300" forceSelection="true">
										<p:ajax event="itemSelect"
											listener="#{propietarioController.handleMovilSelect}"
											update="movilAC,nombreMovil,deseleccionarMovilLink" />
									</p:autoComplete>
									<h:panelGroup>
										<h:outputText id="nombreMovil"
											value="#{propietarioController.movilPropietarioDetalle.movil.numeroMovil} #{propietarioController.movilPropietarioDetalle.movil.patente}" />
										<h:commandLink id="deseleccionarMovilLink"
											disabled="#{!propietarioController.movilSelected}"
											actionListener="#{propietarioController.deseleccionarMovil}"
											update="movilAC,nombreMovil,deseleccionarMovilLink"
											immediate="true">
											<h:graphicImage url="/resource/images/delete.gif"
												title="Deseleccionar" style="border:0px" />
										</h:commandLink>
									</h:panelGroup>
									<h:message id="mmlac" for="movilAC" />

									<h:outputText value="Fecha titular desde" />
									<!-- <p:calendar id="fechaTitularDesdeC"
										value="#{propietarioController.movilPropietarioDetalle.fechaTitularDesde}"
										mode="popup" showOn="button" locale="es"
										pattern="#{msgs.common_inputDateFormat}"
										readOnlyInputText="true">
										<p:ajax event="dateSelect"
											listener="#{propietarioController.handleDateSelect}" />
									</p:calendar> -->

									<p:calendar id="fechaTitularDesdeC"
										value="#{propietarioController.movilPropietarioDetalle.fechaTitularDesde}"
										mode="popup" showOn="button" locale="es"
										pattern="#{msgs.common_inputDateFormat}" immediate="true"
										readOnlyInputText="true" navigator="true"
										yearRange="c-100:c+50"
										converterMessage="El formato de la fecha es incorrecto">
										<p:ajax event="dateSelect"
											listener="#{propietarioController.handleDateSelect}" />
									</p:calendar>
									<h:outputText value="" />
									<h:outputText value="" />

									<h:outputText value="Fecha cédula verde" />
									<!-- <p:calendar id="fechaCedulaVerdeC"
										value="#{propietarioController.movilPropietarioDetalle.fechaCedulaVerde}"
										mode="popup" showOn="button" locale="es"
										pattern="#{msgs.common_inputDateFormat}"
										readOnlyInputText="true">
										<p:ajax event="dateSelect"
											listener="#{propietarioController.handleDateSelect}" />
									</p:calendar> -->

									<p:calendar id="fechaCedulaVerdeC"
										value="#{propietarioController.movilPropietarioDetalle.fechaCedulaVerde}"
										mode="popup" showOn="button" locale="es"
										pattern="#{msgs.common_inputDateFormat}" immediate="true"
										readOnlyInputText="true" navigator="true"
										yearRange="c-100:c+50"
										converterMessage="El formato de la fecha es incorrecto">
										<p:ajax event="dateSelect"
											listener="#{propietarioController.handleDateSelect}" />
									</p:calendar>
									<h:outputText value="" />
									<h:outputText value="" />

									<h:outputText value="Número cédula" />
									<p:spinner id="numeroCedulaS"
										value="#{propietarioController.movilPropietarioDetalle.numeroCedulaVerde}"
										min="0" stepFactor="1" size="20">
										<f:ajax execute="@this" />
									</p:spinner>
									<h:message id="mmncs" for="numeroCedulaS" />
									<h:outputText value="" />

									<h:outputText value="Número título" />
									<p:spinner id="numeroTituloS"
										value="#{propietarioController.movilPropietarioDetalle.numeroTitulo}"
										min="0" stepFactor="1" size="20">
										<f:ajax execute="@this" />
									</p:spinner>
									<h:message id="mmnts" for="numeroTituloS" />
									<h:outputText value="" />


									<h:outputText value="Titular registral" />
									<p:inputText id="titularRegistralIT"
										value="#{propietarioController.movilPropietarioDetalle.titularRegistral}">
										<f:ajax execute="@this" />
									</p:inputText>
									<h:message id="MtitularRegistralIT" for="titularRegistralIT" />
									<h:outputText value="" />

									<p:commandButton value="Agregar"
										actionListener="#{propietarioController.addMovil}"
										update="detalleMovilListDT,movilAC,fechaTitularDesdeC,nombreMovil,deseleccionarMovilLink,fechaCedulaVerdeC,numeroCedulaS,numeroTituloS"
										immediate="true" />
								</h:panelGrid>
							</p:panel>

							<p:dataTable id="detalleMovilListDT" var="movilPropietario"
								value="#{propietarioController.movilDM}" emptyMessage="">

								<f:facet name="header">
									<h:outputText value="Detalles" />
								</f:facet>

								<p:column align="center">
									<f:facet name="header">
										<h:outputText value="Móvil" />
									</f:facet>
									<h:outputText
										value="#{movilPropietario.movil.numeroMovil} - #{movilPropietario.movil.patente}" />
								</p:column>

								<p:column>
									<f:facet name="header">
										<h:outputText value="Fecha Titular Desde" />
									</f:facet>
									<h:outputText value="#{movilPropietario.fechaTitularDesde}">
										<f:convertDateTime pattern="#{msgs.common_inputDateFormat}"
											timeZone="#{msgs.common_timeZone}" />
									</h:outputText>
								</p:column>

								<p:column>
									<f:facet name="header">
										<h:outputText value="Fecha Cédula Verde" />
									</f:facet>
									<h:outputText value="#{movilPropietario.fechaCedulaVerde}">
										<f:convertDateTime pattern="#{msgs.common_inputDateFormat}"
											timeZone="#{msgs.common_timeZone}" />
									</h:outputText>
								</p:column>

								<p:column>
									<f:facet name="header">
										<h:outputText value="Número cédula verde" />
									</f:facet>
									<h:outputText value="#{movilPropietario.numeroCedulaVerde}" />
								</p:column>

								<p:column>
									<f:facet name="header">
										<h:outputText value="Número de título" />
									</f:facet>
									<h:outputText value="#{movilPropietario.numeroTitulo}" />
								</p:column>

								<p:column>
									<f:facet name="header">
										<h:outputText value="Titular registral" />
									</f:facet>
									<h:outputText value="#{movilPropietario.titularRegistral}" />
								</p:column>

								<p:column>
									<f:facet name="header">
										<h:outputText value="Opciones" />
									</f:facet>
									<h:panelGrid columns="3">
										<h:commandLink
											actionListener="#{propietarioController.deleteMovil}"
											immediate="true">
											<h:graphicImage url="/resource/images/delete.gif"
												title="Eliminar" style="border:0px" />
										</h:commandLink>
									</h:panelGrid>
								</p:column>
							</p:dataTable>

						</p:tab>

					</p:tabView>


					<!-- ================================================== -->
					<!-- Opciones											-->
					<!-- ================================================== -->
					<h:panelGrid columns="2">
						<p:commandButton value="Guardar"
							actionListener="#{propietarioController.save}"
							update="form,filtroForm">
						</p:commandButton>
						<p:commandButton value="Volver"
							actionListener="#{propietarioController.cancel}" immediate="true"
							update="form,filtroForm">
						</p:commandButton>
					</h:panelGrid>
				</h:panelGrid>
			</h:form>
		</u:define>
	</u:composition>
</body>
</html>